From 3e84cc9b1748231d618ac3512a72814635844c82 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 25 Jun 2011 22:42:17 -0400 Subject: [PATCH] GtkLabel: optimize away some ::notify emissions --- gtk/gtklabel.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c index e16ea33368..313da19093 100644 --- a/gtk/gtklabel.c +++ b/gtk/gtklabel.c @@ -5431,6 +5431,13 @@ gtk_label_select_region_index (GtkLabel *label, priv->select_info->selection_end == end_index) return; + g_object_freeze_notify (G_OBJECT (label)); + + if (priv->select_info->selection_anchor != anchor_index) + g_object_notify (G_OBJECT (label), "selection-bound"); + if (priv->select_info->selection_end != end_index) + g_object_notify (G_OBJECT (label), "cursor-position"); + priv->select_info->selection_anchor = anchor_index; priv->select_info->selection_end = end_index; @@ -5469,9 +5476,6 @@ gtk_label_select_region_index (GtkLabel *label, gtk_widget_queue_draw (GTK_WIDGET (label)); - g_object_freeze_notify (G_OBJECT (label)); - g_object_notify (G_OBJECT (label), "cursor-position"); - g_object_notify (G_OBJECT (label), "selection-bound"); g_object_thaw_notify (G_OBJECT (label)); } } -- 2.30.2